package com.giantlizard.cloud.base.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

@Data
@NoArgsConstructor
@AllArgsConstructor
@ToString
@EqualsAndHashCode
@ApiModel(value = "SysRole对象", description = "系统-角色")
public class SysRole implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 映射字段 role_id
     * 字段描述 角色ID
     */
    @ApiModelProperty(value = "角色ID")
    private String roleId;

    /**
     * 映射字段 role_name
     * 字段描述 角色名称
     */
    @ApiModelProperty(value = "角色名称")
    private String roleName;

    /**
     * 映射字段 role_description
     * 字段描述 角色描述
     */
    @ApiModelProperty(value = "角色描述")
    private String roleDescription;

    /**
     * 映射字段 role_code
     * 字段描述 角色编码
     */
    @ApiModelProperty(value = "角色编码")
    private String roleCode;

    /**
     * 映射字段 role_status
     * 字段描述 角色状态
     */
    @ApiModelProperty(value = "角色状态")
    private String roleStatus;

    /**
     * 映射字段 data_scope
     * 字段描述 数据范围（1：所有数据权限；2：机构数据权限；3：本部门数据权限；4：本部门及以下数据权限；5：仅本人数据权限）
     */
    @ApiModelProperty(value = "数据范围（1：所有数据权限；2：机构数据权限；3：本部门数据权限；4：本部门及以下数据权限；5：仅本人数据权限）")
    private String dataScope;

    /**
     * 映射字段 remarks
     * 字段描述 备注
     */
    @ApiModelProperty(value = "备注")
    private String remarks;

    /**
     * 映射字段 create_date
     * 字段描述 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createDate;

    /**
     * 映射字段 create_user
     * 字段描述 创建人
     */
    @ApiModelProperty(value = "创建人")
    private String createUser;

    /**
     * 映射字段 update_date
     * 字段描述 修改时间
     */
    @ApiModelProperty(value = "修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateDate;

    /**
     * 映射字段 update_user
     * 字段描述 修改人
     */
    @ApiModelProperty(value = "修改人")
    private String updateUser;

    private List<SysRes> resList;
}